<Tree Checkable BlockNode
      OnClick='e=>EventRecord(e,"OnClick")'
      OnDblClick='e=>EventRecord(e,"OnDblClick")'
      OnContextMenu='e=>EventRecord(e,"OnContextMenu")'
      OnCheckBoxChanged='e=>EventRecord(e,"OnCheckBoxChange")'
      OnExpandChanged='e=>EventRecord(e,"OnExpandChange")'>
    <Nodes>
        <TreeNode Title="A">
            <Nodes>
                <TreeNode Title="A1">
                    <Nodes>
                        <TreeNode Title="A1-1"></TreeNode>
                        <TreeNode Title="A1-2"></TreeNode>
                    </Nodes>
                </TreeNode>
                <TreeNode Title="A2" IsDisabled>
                    <Nodes>
                        <TreeNode Title="A2-1"></TreeNode>
                        <TreeNode Title="A2-2"></TreeNode>
                    </Nodes>
                </TreeNode>
                <TreeNode Title="A3" IsDisableCheckbox>
                    <Nodes>
                        <TreeNode Title="A3-1"></TreeNode>
                        <TreeNode Title="A3-2" IsDisableCheckbox></TreeNode>
                        <TreeNode Title="A3-3" IsDisabled></TreeNode>

                    </Nodes>
                </TreeNode>
            </Nodes>
        </TreeNode>
        <TreeNode Title="B"></TreeNode>
    </Nodes>
</Tree>
<br />
<span>Events</span>
<div style="width:100%;height:150px;overflow-y:scroll">
    <ul>
        @foreach (var item in events)
        {
            <li>@item</li>
        }
    </ul>
</div>

@code{
    public List<string> events { get; set; } = new List<string>();

    public void EventRecord(TreeEventArgs args, string eventName)
    {
        events.Insert(0, $"{eventName}:{args.Node.Title}");
    }
}